<?php

use Illuminate\Contracts\Http\Kernel;
use Illuminate\Http\Request;

define('LARAVEL_START', microtime(true));//定义常量.获取时间戳

/*
检查应用程序是否处于维护状态
如果应用程序通过 “down” 命令处于维护 / 演示模式，我们将加载此文件，以便可以显示任何预渲染的内容，而不是启动框架，这可能会导致异常。
*/

if (file_exists($maintenance = __DIR__.'/../storage/framework/maintenance.php')) {
    require $maintenance;
}

/*
注册自动加载器
Composer 为这个应用程序提供了一个方便的、自动生成的类加载器。我们只需要使用它！我们只需将其引入到这里的脚本中，这样就无需手动加载类了。
*/

require __DIR__.'/../vendor/autoload.php';

/*
运行应用程序
一旦我们有了应用程序，我们就可以使用应用程序的 HTTP 内核来处理传入的请求。然后，我们将把响应发送回客户端的浏览器，让他们享受我们的应用程序。
*/

$app = require_once __DIR__.'/../bootstrap/app.php';

$kernel = $app->make(Kernel::class);

$response = $kernel->handle(
    $request = Request::capture()
)->send();

$kernel->terminate($request, $response);
